home *** CD-ROM | disk | FTP | other *** search
/ Inter.Net 55-1 / Inter.Net 55-1.iso / CBuilder / Setup / BCB / data.z / w32sut.h < prev    next >
Encoding:
C/C++ Source or Header  |  1998-02-09  |  2.1 KB  |  92 lines

  1. #pragma option push -b
  2.  
  3. /***
  4. *w32sut.h -
  5. *
  6. *Purpose:
  7. *       This file declares the constants, structures, and functions
  8. *       used for accessing and using the Universal Thunk mechanism.
  9. *
  10. *       This file should be compiled either with constants W32SUT_16 or
  11. *       W32SUT_32 defined.
  12. *
  13. ****/
  14.  
  15. /*
  16.  *      C/C++ Run Time Library - Version 9.0
  17.  *
  18.  *      Copyright (c) 1994, 1998 by Borland International
  19.  *      All Rights Reserved.
  20.  *
  21.  */
  22.  
  23. /* Check that one of the 2 constants is defined  */
  24. #ifdef W32SUT_16
  25. #ifdef W32SUT_32
  26. #error W32SUT_16 and W32SUT_32 cannot be defined simultaneously
  27. #endif
  28. #endif
  29.  
  30. #ifndef W32SUT_16
  31. #ifndef W32SUT_32
  32. #error  Either W32SUT_16 or W32SUT_32 should be defined
  33. #endif
  34. #endif
  35.  
  36.  
  37. #if defined(__cplusplus)
  38. extern "C" {
  39. #endif
  40.  
  41.  
  42. /****      Prototypes for 32 bit DLL   ***********/
  43. #ifdef W32SUT_32
  44.  
  45. #ifndef __WINBASE_H
  46.  
  47. #include <winbase.h>
  48.  
  49. #endif
  50.  
  51. typedef DWORD  ( WINAPI * UT32PROC)( LPVOID lpBuff,
  52.                                      DWORD  dwUserDefined,
  53.                                      LPVOID *lpTranslationList
  54.                                    );
  55.  
  56. BOOL    WINAPI UTRegister( HANDLE     hModule,
  57.                            LPCSTR     lpsz16BitDLL,
  58.                            LPCSTR     lpszInitName,
  59.                            LPCSTR     lpszProcName,
  60.                            UT32PROC * ppfn32Thunk,
  61.                            FARPROC    pfnUT32Callback,
  62.                            LPVOID     lpBuff
  63.                          );
  64.  
  65.  
  66. VOID    WINAPI UTUnRegister(HANDLE hModule);
  67.  
  68. #endif
  69.  
  70.  
  71. /****      Prototypes for 16 bit DLL   ***********/
  72. #ifdef W32SUT_16
  73.  
  74. typedef DWORD (FAR PASCAL  * UT16CBPROC)( LPVOID lpBuff,
  75.                                           DWORD  dwUserDefined,
  76.                                           LPVOID FAR *lpTranslationList
  77.                                         );
  78.  
  79.  
  80. LPVOID  WINAPI  UTLinearToSelectorOffset(LPBYTE lpByte);
  81. LPVOID  WINAPI  UTSelectorOffsetToLinear(LPBYTE lpByte);
  82.  
  83. #endif
  84.  
  85.  
  86. #if defined(__cplusplus)
  87. }
  88. #endif
  89.  
  90.  
  91. #pragma option pop
  92.